package com.ruoyi.job.util;

import org.quartz.JobExecutionContext;

import com.ruoyi.job.domain.SysJob;

/**
 * 定时任务处理（允许并发执行）
 * 
 * @author ruoyi
 *
 */
//AbstractQuartzJob 继承了 Job 接口，添加了 pre 和 after 拦截逻辑，执行方法调用了子类的 doExecute 方法
public class QuartzJobExecution extends AbstractQuartzJob
{
    @Override
    protected void doExecute(JobExecutionContext context, SysJob sysJob) throws Exception
    {
//     核心：   根据 SysJob 类的 invokeTarget（字符串） 属性，创建 bean 对象，然后执行对应的逻辑
        JobInvokeUtil.invokeMethod(sysJob);
    }
}
